home *** CD-ROM | disk | FTP | other *** search
- // Copyright (C) 1997-2002 Alias|Wavefront,
- // a division of Silicon Graphics Limited.
- //
- // The information in this file is provided for the exclusive use of the
- // licensees of Alias|Wavefront. Such users have the right to use, modify,
- // and incorporate this code into other products for purposes authorized
- // by the Alias|Wavefront license agreement, without fee.
- //
- // ALIAS|WAVEFRONT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- // INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- // EVENT SHALL ALIAS|WAVEFRONT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- // CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- // DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- // TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- // PERFORMANCE OF THIS SOFTWARE.
- //
- //
- // Alias|Wavefront Script File
- // MODIFY THIS AT YOUR OWN RISK
- //
- // Creation Date: 14 January 1999
- // Author: sw
- //
- //
- // Procedure Name:
- // boundaryToolScript
- //
- // Description:
- // create wrapper around the boundary command
- //
- // Input Arguments:
- // 0 ==> do the command.
- // 1 ==> show the action option box
- // 2 ==> return the command
- // 3 ==> show tool option box
- // 4 ==> enter the tool
- //
- // Return Value:
- // None.
- //
-
- global proc boundary4curves( int $ncurves, string $goToTool )
- {
- scriptCtx -e -ssc $ncurves $goToTool;
- if( 4 == $ncurves ) {
- scriptCtx -e
- -setNoSelectionPrompt ("Select 4 curve(s), isoparm(s) " +
- "or trim edges forming a " +
- "closed region).")
- -setSelectionPrompt ("Select 4 curves, isoparms or trim " +
- "edges forming a closed region; " +
- "press ENTER to compute boundary surface.")
- $goToTool;
- }
- else if( 3 == $ncurves ) {
- scriptCtx -e
- -setNoSelectionPrompt ("Select 3 curve(s), isoparm(s) " +
- "or trim edges forming a " +
- "closed region).")
- -setSelectionPrompt ("Select 3 curves, isoparms or trim " +
- "edges forming a closed region; " +
- "press ENTER to compute boundary surface.")
- $goToTool;
- }
- else {
- scriptCtx -e
- -setNoSelectionPrompt ("Select 3 or 4 curve(s), isoparm(s) " +
- "or trim edges forming a " +
- "closed region).")
- -setSelectionPrompt ("Select 3 or 4 curves, isoparms or trim " +
- "edges forming a closed region; " +
- "press ENTER to compute boundary surface.")
- $goToTool;
- }
- }
-
- global proc boundaryToolSetup( int $forceFactorySettings, string $goToTool )
- {
- if( $forceFactorySettings || !`optionVar -ex boundaryEuc` ) {
- optionVar -iv boundaryEuc 0;
- }
- if( $forceFactorySettings || !`optionVar -ex boundaryLac` ) {
- optionVar -iv boundaryLac 1;
- }
- if( "" != $goToTool ) {
- scriptCtx -e -euc `optionVar -q boundaryEuc` $goToTool;
- scriptCtx -e -lac `optionVar -q boundaryLac` $goToTool;
- boundary4curves 0 $goToTool;
- }
- }
-
- global proc boundaryValues ( string $toolName )
- {
- performBoundary 3 $toolName;
- scriptCtxCommonValues( $toolName );
- }
-
- global proc boundaryProperties()
- {
- scriptCtxCommonProperties;
- }
-
- global proc boundaryAutoComplete( int $val, string $goToTool )
- {
- scriptCtx -e -lac $val $goToTool;
- boundary4curves `optionVar -q boundaryAutoEdgeCount` $goToTool;
- }
-
- proc createBoundaryContext( string $tool )
- {
- if( ! `scriptCtx -exists $tool` ) {
- boundaryToolSetup( 0, "" );
- scriptCtx -i1 "boundary.xpm"
- -title "Boundary Tool"
- -bcn "boundary"
-
- -exitUponCompletion `optionVar -q boundaryEuc`
- -totalSelectionSets 1
- -expandSelectionList true
- -fcs ("boundaryToolScript 0")
-
- -setNoSelectionPrompt ("Select 3 or 4 curve(s), isoparm(s) " +
- "or trim edges forming a " +
- "closed region).")
- -setSelectionPrompt ("Select 3 or 4 curves, isoparms or trim " +
- "edges forming a closed region; " +
- "press ENTER to compute boundary surface.")
-
- -setAutoToggleSelection true
- -setAutoComplete `optionVar -q boundaryLac`
- -showManipulators true
-
- -setSelectionCount 0
- -nurbsCurve true
- -isoparm true
- -curveOnSurface true
- -surfaceEdge true
- -polymeshEdge true
- $tool;
- }
- }
-
- global proc string boundaryToolScript( int $setToTool )
- //
- // Description :
- // 0 ==> do the command.
- // 1 ==> show the action option box
- // 2 ==> return the command
- // 3 ==> show tool/action option box
- // 4 ==> enter the tool/do the command
- {
- string $tool = "";
- if( $setToTool > 2 ) {
- if( !`optionVar -q modelWithToolBoundary` ) {
- $setToTool = 4 - $setToTool;
- }
- else {
- $tool = "boundaryContext";
- createBoundaryContext $tool;
- }
- }
- return scriptToolScript( "performBoundary", $setToTool, $tool );
- }
-